package com.example.yiqiuser.controller;


import com.example.yiqiuser.util.Result;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * @ fileName:GlobalExceptionHandlerController
 * @ description:全局异常处理控制器   （处理所有controller出现的任何异常）
 * @ author:zhz
 * @ createTime:2023/3/24 11:40
 * @ version:1.0.0
 */
@RestControllerAdvice //加上该注解，所有的controller都会走该controller  一般用于统一处理什么业务时使用
//@ControllerAdvice
public class GlobalExceptionHandlerController extends BaseController {

    /**
     * 统一处理异常的方法
     *
     * @param e
     * @return
     */
    @ExceptionHandler  //标识当前方法是处理统一异常的方法
    public Result handlerException(Exception e) {
        // 一定要打印堆栈异常  方便程序员找bug
        e.printStackTrace();
        //反射获取异常名称e.getClass().getName()
        return error(e.getClass().getName());
    }
}
